Configuring channels for sharing media

ABSTRACT

A user interface for sharing media items with others. From a sender&#39;s perspective, embodiments of the invention allow for an easy-to-use drag-and-drop technique that is more user-friendly than conventional techniques. From the recipient&#39;s perspective, embodiments of the invention allow media items from multiple sources to be aggregated into a single viewport, providing a cohesive and unified approach to media items received from others.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims benefit of U.S. provisional patent applicationSer. No. 61/180,820 filed on May 22, 2009, which is hereby incorporatedherein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Embodiments of the present invention generally relate to computersoftware and, more specifically, to configuring channels for sharingmedia.

2. Description of the Related Art

Digital video camera (DVC) technology has developed rapidly over thepast decade. DVC technology provides a user with a convenient devicethat records video and audio and also provides the ability to transferthe recorded video and audio to a computer-readable medium. A DVC usertypically records video and audio by activating a recording mode of theDVC and pointing the lens of the DVC towards an area of interest torecord the subject matter in that area. Once video and audio data isrecorded on the DVC, the data may be transferred to a computer memoryvia a cord or connector that couples the DVC to a computer or output toa television (TV). Common types of connectors provided with DVCs areuniversal serial bus (USB) connectors, firewire connectors,High-Definition Multimedia Interface (HDMI) connectors, proprietaryconnectors, or other types of connectors that may be used to transferdata. Some DVCs may include a cord that connects the DVC to thecomputer; whereas, other DVCs may include a connector that protrudesfrom the DVC and can be plugged directly into a computer.

A problem often encountered by DVC users involves sharing captured mediawith others. One conventional technique for sharing media with anotheris to email the media to another individual as an attachment. Thistechnique has several drawbacks. First, the file size may be too largefor the recipient's email server to handle properly. Second, if therecipient accidentally loses or deletes the email, then the recipientwill no longer have access to the media. A second technique for sharingmedia with others involves publishing the video on the Internet on amedia publishing website, e.g., YouTube.com. However, one problem withpublishing media is that anyone with Internet access can view the mediathat the user publishes on the website. Accordingly, the sender is notable to target only certain recipients via the media publishing website.

Accordingly, there remains a need in the art for a technique to moreeffectively share media with others that overcomes one or more oflimitations of conventional approaches set forth above.

SUMMARY

One embodiment of the invention provides a computer-implemented methodfor organizing media items in a viewport application. The methodincludes causing a representation of a first media item associated witha first channel defined by a first set of media items that includes thefirst media item and a first set of recipients to be displayed in afirst portion of a viewport generated when the viewport applicationexecutes on a computer system; receiving a user selection to access thefirst media item; and displaying the first portion of the viewport on adisplay device associated with the computer system.

Another embodiment of the invention provides a computer-implementedmethod for sharing media items with one or more persons. The methodincludes selecting a first media item; associating the first media itemwith a first channel defined by a set of media items that includes thefirst media item and a set of recipients that includes a firstrecipient; and initiating a transfer of the first media item from afirst computing device to a server computing device, where the firstmedia item is stored on the server computing device, and where the firstrecipient is permitted to access the first media item from the servercomputing device via a second computing device.

Yet another embodiment of the invention provides a computer systemconfigured to enable media items to be shared between two or morepersons. The computer system includes a processor configured to receivea media item from a first computing device, where the media item isincluded in a channel that is associated with a first set of media itemsand a first set of recipients; store the media item in a storage memory;and allow each of the recipients included in the first set of recipientsto access the media item from one or more other computing devices.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating components of a system configuredto implement one or more aspects of the present invention.

FIG. 2 is a block diagram of a computing device, according to oneembodiment of the invention.

FIG. 3 is a block diagram of a hand-held device (HHD), according to oneembodiment of the invention.

FIG. 4 is a screenshot of a user interface configured to allow a senderto share one or more media items with one or more recipients, accordingto one embodiment of the invention.

FIG. 5 is flow diagram of method steps for adding an additional video toa channel, according to one embodiment of the invention.

FIG. 6 is a screenshot of a user interface illustrating one or moremedia items being transferred to the server, according to one embodimentof the invention.

FIG. 7 is flow diagram of method steps for adding an additionalrecipient to a channel, according to one embodiment of the invention.

FIG. 8 is flow diagram of method steps for causing one or more channelsto be displayed to a recipient in a viewport, according to oneembodiment of the invention.

FIG. 9 is a screenshot of a viewport, according to one embodiment of theinvention.

FIG. 10 is flow diagram of method steps for removing a media item from achannel, according to one embodiment of the invention.

FIG. 11 is flow diagram of method steps for removing a recipient from achannel, according to one embodiment of the invention.

FIG. 12 is a screenshot of an e-mail notification received by arecipient, according to one embodiment of the invention.

FIG. 13 is a screenshot of a viewport to which a web browser of arecipient is navigated when the recipient clicks on a link included inthe e-mail notification, according to one embodiment of the invention.

FIG. 14 is a screenshot of a viewport after the recipient has logged-into a media sharing account, according to one embodiment of theinvention.

FIG. 15 is a screenshot of a viewport configured to display media itemsassociated with a channel created by the recipient, according to oneembodiment of the invention.

FIG. 16 is a screenshot of a viewport configured to allow a recipient toconfigure the settings of the viewport, according to one embodiment ofthe invention.

DESCRIPTION OF EXAMPLE EMBODIMENTS

FIG. 1 is a block diagram illustrating components of a system 100configured to implement one or more aspects of the present invention. Asshown, the system 100 includes a sender computing device 102, a network104, a first recipient computing device 106, a second recipientcomputing device 108, a server computing device 110, a database 112, anda hand-held device 114.

Each of the sender computing device 102, the first recipient computingdevice 106, the second recipient computing device 108, and the servercomputing device 110 may be any technically feasible type of computingsystem. In an alternative embodiment, the computing devices 102, 106,108 may comprise a web-enabled television, a mobile phone, or a computermonitor that includes computing hardware, among others.

The computing devices 102, 106, 108, 110 are coupled to one another viathe network 104 and may transmit and receive data across the network104. The network 104 may be any type of network, including the WorldWide Web, the Internet, a local area network (LAN), a wide area network(WAN), an intranet, a cellular network, or any other technicallyfeasible type of network.

The sender computing device 102 includes a processor 116, a memory 118,and input/output (I/O) devices 128. The processor 116 is coupled to theI/O devices 128 and to the memory 118. The processor 116 is the primaryprocessor of the sender computing device 102. The processor 116 may be asingle-core processor, a multi-core processor, an application-specificintegrated circuit (ASIC), a field-programmable gate array (FPGA), agraphics processing unit (GPU), or a combination of processing units.The processor 116 is configured to execute program instructions storedin the memory 118. The program instructions may include softwareapplications, drivers, and/or operating systems. In one embodiment, thesoftware application provides a user interface that allows a sender toshare one or more media items with one or more recipients with achannel, as described in greater detail herein.

The I/O devices 128 may include a keyboard, a mouse, a monitor, aspeaker, a switch, a touchscreen, a universal serial bus (USB) port, afirewire port, a serial port, an Ethernet port, a disk drive, a flashdrive, or a wireless network card, among others. In one embodiment, theI/O devices 128 are used to transmit data to and receive data from thenetwork 104. In another embodiment, the I/O devices 128 can be used tostore data in the memory 118.

The memory 118 may be any type of memory unit, including a random-accessmemory (RAM) unit, a dynamic RAM (DRAM) unit, a hard disk drive, or aflash memory module, among others. The memory 118 is configured to storesoftware applications, drivers, and/or operating systems. In oneembodiment, the memory 118 stores a software application that, whenexecuted by the processor 116, provides a user interface for sharingmedia items with recipients.

The first recipient computing device 106 includes a processor 120, amemory 122, and I/O devices 130. The processor 120 is coupled to the I/Odevices 130 and to the memory 122. The processor 120 is the primaryprocessor of the first recipient computing device 106. The processor 120may be a single-core processor, a multi-core processor, an ASIC, anFPGA, a GPU, or a combination of processing units. The processor 120 isconfigured to execute program instructions stored in the memory 122. Theprogram instructions may include software applications, drivers, and/oroperating systems. In one embodiment, the software applications includeone or more programs configured to provide a user interface for aviewport in which multiple streams of shared media items are aggregated.

The I/O devices 130 may include a keyboard, a mouse, a monitor, aspeaker, a switch, a touchscreen, a USB port, a firewire port, a serialport, an Ethernet port, a disk drive, a flash drive, or a wirelessnetwork card, among others. In one embodiment, the I/O devices 130 areused to transmit data to and receive data from the network 104. Inanother embodiment, the I/O devices 130 can be used to store data in thememory 122.

The memory 122 may be any type of memory unit, including a random-accessmemory (RAM) unit, a dynamic RAM (DRAM) unit, a hard disk drive, or aflash memory module, among others. The memory 122 is configured to storesoftware applications, drivers, and/or operating systems. In oneembodiment, the memory 122 stores a software application that, whenexecuted by the processor 120, provides a user interface for receivingshared media.

The second recipient computing device 108 includes a processor 124, amemory 126, and I/O devices 132. In one embodiment, the processor 124,the memory 126, and the I/O devices 132 included in the second recipientcomputing device 108 are substantially similar to the processor 120, thememory 122, and the I/O devices 130, respectively, included in the firstrecipient computing device 106, and are not described in greater detailherein.

In the system 100 illustrated in FIG. 1, two different recipientcomputing devices 106, 108 are shown. In alternative embodiments, thesystem 100 may include one recipient computing device, or more than twodifferent recipient computing devices. Similarly, in the system 100illustrated in FIG. 1, one sender computing device 102 is shown. Inalternative embodiments, the system 100 may include two or moredifferent sender computing devices. In still further embodiments, aparticular computing device may be both a sender computing device and arecipient computing device, as described in greater detail herein.

The server computing device 110 includes a processor, a memory, and I/Odevices (none shown). Similar to the processors 116, 120, 124 includedin the other computing devices 102, 106, 108 shown in FIG. 1, theprocessor included in the server computing device 110 is coupled to theI/O devices and to the memory. The processor is the primary processor ofthe server computing device 110. The processor may be a single-coreprocessor, a multi-core processor, an ASIC, an FPGA, a GPU, or acombination of processing units. In some embodiments, the processor maybe configured to execute program instructions stored in the memory. Theprogram instructions may include software applications, drivers, and/oroperating systems. In one embodiment, the software applications mayinclude a program that allows for the sharing of one or more media itemsbetween a sender and one or more recipients via a channel.

Additional details of a computing device, such as one or more of thecomputing devices 102, 106, 108, 110, are described below in greaterdetail in FIG. 2.

As shown, the server computing device 110 is coupled to a database 112.The database 112 may be any technically feasible type of storage device.In one embodiment, the database 112 stores the media items being sharedbetween a sender and one or more recipients via channels. In someembodiments, the database 112 is included within the server computingdevice 110.

The hand-held device 114 may be any technically feasible type ofhand-held device, including, for example, a digital video camera, adigital photo camera, or a cellular phone. An example of a hand-helddevice 114 is described below in greater detail in FIG. 3.

FIG. 2 is a block diagram of a computing device 200, according to oneembodiment of the invention. The computing device 200 is one embodimentof a configuration of one or more of the computing devices 102, 106,108, 110, shown in FIG. 1. Computing device 200 may be a personalcomputer, video game console, personal digital assistant, renderingengine, mobile phone, web-enabled TV, set-top box, or any other devicesuitable for practicing one or more embodiments of the presentinvention.

As shown, computing device 200 includes a CPU 202 and a system memory204 communicating via a bus path that may include a memory bridge 205.CPU 202 includes one or more processing cores, and, in operation, CPU202 is the master processor of computing device 200, controlling andcoordinating operations of other system components. System memory 204stores software, applications and data for use by CPU 202. CPU 202 runssoftware applications and optionally an operating system. Memory bridge205, which may be, e.g., a Northbridge chip, is connected via a bus orother communication path (e.g., a HyperTransport link) to an I/O(input/output) bridge 207. I/O bridge 207, which may be, e.g., aSouthbridge chip, receives user input from one or more user inputdevices 208 (e.g., keyboard, mouse, joystick, digitizer tablets, touchpads, touch screens, still or video cameras, motion sensors, and/ormicrophones) and forwards the input to CPU 202 via memory bridge 205.

A display processor 212 is coupled to memory bridge 205 via a bus orother communication path (e.g., a PCI Express, Accelerated GraphicsPort, or HyperTransport link); in one embodiment display processor 212is a graphics subsystem that includes at least one GPU and graphicsmemory. Graphics memory includes a display memory (e.g., a frame buffer)used for storing pixel data for each pixel of an output image. Graphicsmemory can be integrated in the same device as the GPU, connected as aseparate device with the GPU, and/or implemented within system memory204.

Display processor 212 periodically delivers pixels to a display device210 (e.g., a screen or conventional CRT, plasma, OLED, SED or LCD basedmonitor or television). Additionally, display processor 212 may outputpixels to digital recorders adapted to reproduce computer generatedimages on digital media. Display processor 212 can provide displaydevice 210 with an analog or digital signal.

A system disk 214 is also connected to I/O bridge 207 and may beconfigured to store content and applications and data for use by CPU 202and display processor 212. System disk 214 provides non-volatile storagefor applications and data and may include fixed or removable hard diskdrives, flash memory devices, and CD-ROM, DVD-ROM, Blu-ray, HD-DVD, orother magnetic, optical, or solid state storage devices.

A switch 216 provides connections between I/O bridge 207 and othercomponents such as a network adapter 218 and various add-in cards 220and 221. Network adapter 218 allows computing device 200 to communicatewith other systems via an electronic communications network, and mayinclude wired or wireless communication over local area networks andwide area networks such as the Internet.

Other components (not shown), including USB or other port connections,film recording devices, and the like, may also be connected to I/Obridge 207. For example, an audio processor may be used to generateanalog or digital audio output from instructions and/or data provided byCPU 202, system memory 204, or system disk 214. Communication pathsinterconnecting the various components in FIG. 2 may be implementedusing any suitable protocols, such as PCI (Peripheral ComponentInterconnect), PCI Express (PCI-E), AGP (Accelerated Graphics Port),HyperTransport, or any other bus or point-to-point communicationprotocol(s), and connections between different devices may use differentprotocols, as is known in the art.

In one embodiment, display processor 212 incorporates circuitryoptimized for graphics and video processing, including, for example,video output circuitry, and constitutes a GPU. In another embodiment,display processor 212 incorporates circuitry optimized for generalpurpose processing. In yet another embodiment, display processor 212 maybe integrated with one or more other system elements, such as the memorybridge 205, CPU 202, and I/O bridge 207 to form a system on chip (SoC).In still further embodiments, display processor 212 is omitted andsoftware executed by CPU 202 performs the functions of display processor212.

Pixel data can be provided to display processor 212 directly from CPU202. In some embodiments of the present invention, instructions and/ordata representing a scene are provided to a render farm or a set ofserver computers, each similar to computing device 200, via networkadapter 218 or system disk 214. The render farm generates one or morerendered images of the scene using the provided instructions and/ordata. These rendered images may be stored on computer-readable media ina digital format and optionally returned to computing device 200 fordisplay. Similarly, stereo image pairs processed by display processor212 may be output to other systems for display, stored in system disk214, or stored on computer-readable media in a digital format.

Alternatively, CPU 202 provides display processor 212 with data and/orinstructions defining the desired output images, from which displayprocessor 212 generates the pixel data of one or more output images. Thedata and/or instructions defining the desired output images can bestored in system memory 204 or graphics memory within display processor212.

It will be appreciated that the system shown herein is illustrative andthat variations and modifications are possible. The connection topology,including the number and arrangement of bridges, may be modified asdesired. For instance, in some embodiments, system memory 204 isconnected to CPU 202 directly rather than through a bridge, and otherdevices communicate with system memory 204 via memory bridge 205 and CPU202. In other alternative topologies, display processor 212 is connectedto I/O bridge 207 or directly to CPU 202, rather than to memory bridge205. In still other embodiments, I/O bridge 207 and memory bridge 205might be integrated into a single chip. The particular components shownherein are optional; for instance, any number of add-in cards orperipheral devices might be supported. In some embodiments, switch 216is eliminated, and network adapter 218 and add-in cards 220, 221 connectdirectly to I/O bridge 207.

FIG. 3 is a block diagram of a hand-held device (HHD) 114, according toone embodiment of the invention. As shown, the HHD 114 includes, withoutlimitation, a data connector 302, a speaker 304, a microphone 306,status indicators 308, a power supply 310, optical components 312, adigital video image sensor 314, a CPU 316, a digital viewfinder 318,interface buttons 320, and an internal memory 338. In one embodiment,the HHD 114 is a digital video camera.

The data connector 302 is an integrated mechanism that allows the HHD114 to be connected with a separate TV or computing device, such aslaptop or a desktop computer, and to transfer data to and from thecomputing device and/or output video and audio to the TV. The dataconnector 302 may be a USB connector, a firewire connector, a HDMIconnector, a serial connector, or another type of connector that iscapable of connecting the HHD 114 with the TV or the computing device.

The status indicators 308 visually indicate the current mode ofoperation of the HHD 114. The status indicators 308 include lightemitting diodes (LEDs) that can be “ON,” blinking, or “OFF,” dependingon the current operating mode of the HHD 114. The operating modes of theHHD 114 include, among others, a record mode and a playback mode. Whenin the record mode, the HHD 114 is configured to capture video and audioof a particular scene through the optical components 312 and themicrophone 306, respectively. When in the playback mode, the HHD 114 isconfigured to play digital videos that are stored in the internal memory338. The digital videos stored in the internal memory 338 may be videoscaptured with the HHD 114 or videos transferred to the HHD 114, but notcaptured by the HHD 310, including videos downloaded from the Internet.In one embodiment, the digital videos may be displayed on the digitalviewfinder 318, and the audio may be output through the speaker 304. Inalternative embodiments, the digital video and audio may be output tothe TV or to the computer system for playback.

The power supply 310 provides power to the HHD 114. The power may beprovided by a battery or an external power source (e.g., an AC outlet).In one embodiment, the battery is a rechargeable battery that is notremovable from the HHD 114. In alternative embodiments, the battery mayinclude one or more removable and/or replaceable batteries. The opticalcomponents 312, which may include one or more lenses, capture the sceneand direct light associated with the scene onto the digital video imagesensor 314. The digital video image sensor 314 converts the capturedimage into digital video data and then transmits the digital video datato the CPU 316 for further processing.

The microphone 306, similarly, captures the sound in the scene. In oneembodiment, the microphone includes hardware and/or software configuredto convert the captured sound to digital audio data and to transmit thedigital audio data to the CPU 316 for further processing. In alternativeembodiments, the microphone may transmit raw analog data to the CPUwithout any pre-processing.

The CPU 316 communicates with the various components within the HHD 114to control the operations of the HHD 114. The CPU may be implemented asa single chip or as a combination of multiple chips. The CPU 316 alsoprocesses inputs from the interface buttons 320. For example, when theHHD 114 is in record mode, the CPU 316 transmits the digital video datareceived from the digital video image sensor 314 to the digitalviewfinder 318 for display. In one embodiment, the CPU 316 combines thedigital audio data received from the microphone 306 and the digitalvideo data received from the digital video image sensor 314 to create acomposite video file. The composite video file may then be transmittedto the internal memory 338 for storage. When the HHD 114 is in playbackmode, the CPU 316 retrieves the composite video file from the internalmemory 338 and transmits the video portion of the composite video fileto the digital viewfinder 318 and the audio portion of the compositevideo file to the speakers 304. In alternative embodiments, the digitalaudio data received from the microphone 306 and the digital video datareceived from the digital video image sensor 314 may be storedseparately in the internal memory 338.

The digital viewfinder 318 may be configured to display composite videofiles stored on the HHD 114. The digital viewfinder 318 may also beconfigured to display an image of the scene being captured while thecorresponding composite video file is being recorded. The digitalviewfinder 318 is preferably a liquid crystal display (LCD).

The interface buttons 320 may include mechanical buttons, such as apower button 322 and a record button 324. The power button 312 isconfigured to turn the HHD 114 on and off. The record button 324, whenselected, begins and ends the recording of video and audio of aparticular scene.

In an embodiment, the other interface buttons, including a left button326, a right button 334, an increase button 320, a decrease button 336,a play/pause button 332, and a delete button 330 are implemented ascapacitive-touch buttons. In alternative embodiments, these otherinterface buttons may be implemented as induction buttons,analog-resistive buttons, or any other technically feasible button typethat can be engaged by the user in an electrically conductive manner. Inalternative embodiments, any or all of the interface buttons may beimplemented as a mechanical button. The left button 326 and the rightbutton 334 may be used to scroll through composite video files stored inthe internal memory 338 or to navigate menu options. The increase button328 and the decrease button 336 provide various functions depending onthe current operating mode of the HHD 114, includingincreasing/decreasing a magnification factor (e.g., a zoom factor),increasing/decreasing an audio volume, or incrementing/decrementinginput values in various menu options such as date and/or time setup. Forexample, when the HHD 114 is in playback mode, the increase button 328is used to increase the audio volume. In other modes, the increasebutton 328 is used to increase the magnification of an image beingcaptured or viewed on the digital viewfinder 318.

Similarly, the decrease button 336 is used to decrease the audio volumein playback mode. In other modes, the decrease button 336 is used todecrease the magnification of an image being captured or viewed on thedigital viewfinder 318. Similarly, the play/pause button 332 providesvarious functions depending on the current operating mode of the HHD114, including playing a composite video file stored on the HHD 114,pausing the playback of a composite video file, and accepting a menuoption, among others. The delete button 320, when selected, causes datato be deleted from the internal memory 338.

The internal memory 338 stores the composite video files as well asfirmware that is executed by the CPU 316 to control the operations ofthe HHD 114. The internal memory 338 comprises either volatile memory,such as dynamic random access memory (DRAM), or non-volatile memory,such as a hard disk or a flash memory module, or a combination of bothvolatile and non-volatile memory. The internal memory 338 also stores asoftware driver 340 implemented as a set of program instructionsconfigured to coordinate operation between the interface buttons 320 andthe other components of the HHD 114, as described in greater detailherein. For example, the program instructions that constitute the driver340 may be executed by the CPU 316 to cause different capacitive-touchbuttons to be illuminated when the HHD 114 is in different operatingmodes.

The internal memory may also include a software application 342. Whenthe HHD 114 is coupled to computing device via the data connector 302 orvia another wired or wireless connection, the software application 342is transferred to the computing device. In one embodiment, the softwareapplication 342 is automatically installed on the computing device oncetransferred from the HHD 114 to the computing device. In alternativeembodiments, the software application 342 may be downloaded from theInternet and installed on the computing device. In one embodiment, thesoftware application 342 may be configured to provide a user interfacefor a sender to share one or more media items with one or morerecipients via a channel and/or provide a user interface for a recipientto receive multiple streams of media items via one or more channels andaggregate the multiple streams into a single user interface.

As persons having ordinary skill in the art would understand, the HHD114 described in detail in FIG. 3 is merely one embodiment of ahand-held device, and many other configurations are within the scope ofembodiments of the invention.

Embodiments of the invention provide a user interface for allowing usersto share media items with other users. A user may create a “channel”using a software application and associate one or more media items withthe channel. Media items may include videos, images, or any other typeof media file. Each channel is also associated with one or morerecipients. In one embodiment, recipients are identified by e-mail(electronic mail) address. In alternative embodiments, recipients areidentified by a telephone number (e.g., a mobile telephone number).

When a sender creates a channel and associates one or more media itemsand one or more recipients with the channel, the media items areuploaded from the sender computing device 102 and stored on the servercomputing device 110 and/or the database 112 via the network 104. Anotification may be sent to each of the one or more recipientsindicating that the media items are being shared to the recipients. Inone embodiment, the recipients are identified by e-mail address and thenotification is sent to each recipient via e-mail. In other embodiments,where recipients are identified by email address or by anothermechanism, the notifications may be sent via another medium, such as asocial network feed or message (e.g., Facebook© feed, Twitter™ tweet),Really Simple Syndication (RSS) feed, text message, SMS (Short MessageService) message, among others. A recipient of the channel is then ableto access the media items included in the channel created by the sendervia a viewport. The viewport is a software application and/or interfaceimplemented on the recipient's computing device. The viewport may haveone or more different implementations, such as a web interface, a mobilephone application, a set-top box, web-enabled TV, and/or a desktopapplication installed and executing on a computer system. The viewportmay also be incorporated into the software application that is used by asender to share media items via channels. Accordingly, in someembodiments, a single software application may allow the user to managethe channels that the user has shared with others (i.e., user acting as“sender”) and also manage the channels they the user has received (i.e.,user acting as “recipient”).

In some embodiments, the sender may add additional media items to analready-existing channel. When additional media items are added to thechannel, these additional media items become available to each of therecipients of the channel. Similarly, the sender may cause one or moreadditional recipients to be associated with the channel. When one ormore additional recipients are associated with the channel, the one ormore additional recipients are also able to access each of the one ormore media items included in the channel.

In yet further embodiments, the sender may create multiple channels.Each channel may be associated with one or more sets of recipients. Theset of recipients associated with each channel may be different.Additionally, a particular recipient may be associated with multiplechannels. In such a scenario, the recipient associated with multiplechannels is able to access the media items in each of the multiplechannels with which the recipient is associated. In still furtherembodiments, a channel may be created where the sender is the onlyrecipient of the channel. Additional details of various embodiments ofadding and/or removing channels and/or recipients are described ingreater detail herein.

FIG. 4 is a screenshot of a user interface 400 configured to allow asender to share one or more media items with one or more recipients,according to one embodiment of the invention. As shown, the userinterface 400 includes a navigation portion 402 and a media portion 422.A software application stored in the memory 118 included in the sendercomputing device 102, and executed by the processor 116, may cause theuser interface 400 to be displayed on a display device associated withthe sender computing device 102. As described, the software applicationmay have been transferred to the sender computing device 102 from a HHD114, or, alternatively, may have been downloaded from the Internet. Instill further embodiments, the software application may be stored on aremote server and be accessed over a web portal, or the like.

Navigation portion 402 includes one or more additional portions,including a hand-held device (HHD) portion 404, a shortcuts portion 406,a computer portion 408, a channels portion 410, and a resources portion412. One or more of the portions 404, 406, 408, 410, 412 may include oneor more buttons or links that may allow one or more media items to bedisplayed in the media portion 422 of the user interface 400. In oneembodiment, visual representations displayed as “folder” icons 426 aredisplayed in the navigation portion 402 when the media items associatedwith that visual representation are stored locally within a memoryassociated with the sender computing device 102. The media items storedlocally may have been captured by the HHD 114 and/or downloaded from theInternet and/or received from any source. In some embodiments, thevisual representations are represented as “channel icons” 428representing multiple people when the media items associated with thatvisual representation are remotely stored on a server or other computingdevice and one or more other recipients (i.e., other than the sender)can also access the media items. In yet further embodiments, the visualrepresentation is represented as a “channel icon” representing a singleperson 430 when the media items associated with that visualrepresentation are remotely stored on a server or other computing deviceand only the sender is able to access the media items associated withthat visual representation.

The HHD portion 404 includes visual representations that allow a user toview media items stored in the memory 338 included in a HHD 114 or inanother hand-held device associated with the sender computing device102. A HHD 114 may be coupled to the sender computing device 102 via awired and/or wireless communication. In some embodiments, the HHD 114 isenumerated as a mass storage device associated with the sender computingdevice 102. In one embodiment, when the HHD 114 is coupled to the sendercomputing device 102, all of the media items that have not yet beencopied to the sender computing device are transferred to the localstorage associated with the sender computing device.

In an alternative embodiment, the HHD 114 may provide a user interfacethat allows a user of the HHD 114 to “tag” media items stored in theinternal memory 338 of the HHD 114 as designated for one or moreparticular channels before the HHD 114 is coupled to the sendercomputing device 102. Accordingly, when the HHD 114 is coupled to thesender computing device 102, transfer to the server 110 of those mediaitems that are tagged as designated for one or more particular channelsis automatically initiated. In one embodiment, the media items aretransferred directly from the HHD 114 to the server 110. In anotherembodiment, the media items may be first transferred to the sendercomputing device 102 and subsequently transferred from the sendercomputing device 102 to the server 110.

The shortcuts portion 406 includes visual representations that allow theuser to access one or more aggregated media items. For example, some orall of the media items accessible via the navigation portion 402 may beaggregated into collections of media items designated as “favorites,”video media items, and photo media items. In one embodiment, a user maydesignate one or more videos to be “favorite” videos. When the userselects the favorites shortcut, a representation of some or all of themedia items designated as favorites is displayed in the media window422. When the “movies” shortcut is selected by the user, arepresentation of each of the media items designated as “movies” isdisplayed in the media portion 422. Similarly, when the “photos”shortcut is selected by the user, a representation of each of the mediaitems designated as a “photos” is displayed in the media portion 422. Aspersons having ordinary skill in the art would understand, the mediaitems accessible via the navigation portion 402 may be aggregated inmany different shortcuts using appropriate filtering logic. For example,a “new” shortcut may provided such that when the new shortcut isselected by the user, a representation of each of the media items thatthe user has not yet viewed is displayed in the media portion 422.

The computer portion 408 of the navigation portion 402 includes one ormore visual representations (e.g., folders) including media items. Asshown, the folders in the computer portion 408 are organized by monthand year. As persons having ordinary skill in the art would understand,the organization of the folders in the computer portion 408 may includeany organizational structure, including subfolders. A number isdisplayed adjacent to each folder and includes a number indicating thenumber of media items included in the folder. Each of the media itemsincluded in the folder included in the computer portion 408 is storedlocally in the memory 118 and/or other storage device and/or diskassociated with the sender computing device 102 that is executing thesoftware application that causes the user interface 400 to be displayed.

The channels portion 410 includes one or more visual representations(e.g., channel icons) associated with one or more channels created bythe sender. As shown, the sender has created a “My girls” channel thatincludes three media items. The “My girls” channel is shown as beinghighlighted 424, indicating that the “My girls” channel is currentlyselected by the user. When the “My girls” channel is selected,representations of the three media items associated with the channel aredisplayed in the media portion 422. As also shown in FIG. 4, the mediaportion 422 includes a recipient portion 414. The recipient portion 414includes one or more e-mail addresses associated with the “My girls”channel. As described above, each recipient associated with one of thee-mail addresses included in the recipient portion 414 is permitted toaccess the three media items associated with the channel via a viewport.In the example shown in FIG. 4, a first user, associated with the emailaddress “firstuser@email.com,” and a second user, associated with theemail address “seconduser@email.com,” are both recipients of the “Mygirls” channel. Thus, the first user and the second user are able toaccess the three media items associated with the “My girls” channel viaa viewport, such as a web browser interface.

Referring again to the channels portion 410, the sender has also createda “holiday” channel with one media item, and a “mexico” channel with nomedia items. As should be understood by those having ordinary skill inthe art, the sender may create any number of channels. Additionally, a“My Channel” channel is included in the channels portion 410. The “MyChannel” channel is a channel configured so that the user/sender is theonly recipient. When media items are included in the “My Channel”channel, the sender is able to access the media items via anyappropriate viewport. Advantageously, the user/sender is able to accessmedia items associated with the “My Channel” channel “on-the-go” (e.g.,via a web or mobile based application), thereby increasing theportability of the media items stored on the user/sender's computer.

The resources portion 412 includes additional resources associated withthe user interface 400, including, a shortcut to a store interface, ahelp/support shortcut, and a registration shortcut. As persons havingordinary skill in the art would understand, any number of otherresources may also be included in the resources portion 412.

FIG. 5 is flow diagram of method steps for adding an additional video toa channel, according to one embodiment of the invention. Persons skilledin the art will understand that, even though the method 500 is describedin conjunction with the systems of FIGS. 1-4, any system configured toperform the steps of the method 500 illustrated in FIG. 5, in any order,is within the scope of the invention.

As shown, the method 500 begins at step 502, where a softwareapplication executing on the sender computing device 102 detects thatthe sender has dragged and dropped a visual representation associatedwith a media item over an area associated with a first channel. In oneembodiment, the visual representation associated with the media item isthumbnail image associated with the media item. For example, if themedia item is a video clip, then the visual representation associatedwith the media item may be a single video frame associated with thevideo clip. In alternative embodiments, any other technically feasiblerepresentation may be provided other than a thumbnail image. Asdescribed in relation to FIG. 4, each channel associated with the senderis included in the channel portion 410. The visual representation ofeach channel included in the channel portion occupies a certain area ofthe user interface 400. Thus, at step 502, the software applicationdetects that when the sender drags-and-drops a visual representationassociated with a media item (e.g., a thumbnail of a media item) into anarea associated with a channel. Before being dragged-and-dropped intothe area associated with the channel, the media item associated with thethumbnail may be stored in a variety of locations. In one embodiment,the media item is stored on the sender computing device 102. In anotherembodiment, the media item may be stored on HHD 114 anddragged-and-dropped directly from the HHD 114 to the channel. In stillfurther embodiments, the media item may be stored on a server, and apointer to the media item is dragged-and-dropped from one location intoa channel. Additionally, in some embodiments, a sender may associate amedia item with a particular channel by selecting a channel shortcutbutton 426 included in the user interface 400. For example, the user mayselect the media item (e.g., with a mouse cursor), and may then selectthe channel shortcut button 426. A dialog box may open requesting theuser to select one or more channel to which the selected media itemshould be added. Additionally, the dialog box may allow the user toselect one or more existing channels or create one or more additionalchannels with which the media item is to be associated. Additionally, insome embodiments, step 502 is omitted, and the software applicationdetects that the user has associated a media item with the first channelin any technically feasible manner.

At step 504, the software application initiates a transfer of the mediaitem associated with the visual representation from the sender computingdevice 102 to the server 110 via the network 104.

FIG. 6 is a screenshot of a user interface 600 illustrating one or moremedia items being transferred to the server 110, according to oneembodiment of the invention. As shown, the user interface 600 includes anavigation portion 606 and a media portion 608. The navigation portion606 includes a computer portion 604 and a channels portion 610.

A folder 602 included in the computer portion 604 is selected by thesender, as indicated by highlighting. As described above in FIG. 4, themedia items included in a folder (i.e., folder 602) included in thecomputer portion 408 may be stored locally on the sender computingdevice 102. Once the folder 602 is selected, as shown in FIG. 6,thumbnail representations 620 of the media items associated with thefolder 602 are displayed in the media portion 608 of the user interface600.

In one embodiment, the sender manipulates a pointing device, such as amouse, to select one of the media items included in the media window608. The sender may then drag the thumbnail representation associatedwith the media item into one or more channels included in the channelsportion 610. In the screenshot shown in FIG. 6, the sender hasdragged-and-dropped a first media item into channel 612 and hasdragged-and-dropped a second media item into channel 614. An icon 622may be displayed adjacent to the visual representation of the channels612, 614 indicating that one or more media items are currently beingadded to that particular channel. Additionally, a status portion 618 mayalso be included in the user interlace 600, which indicates that thetransfer of media items to the server 110 is taking place.

Referring back now to FIG. 5, in some embodiments, where a copy of themedia item is already stored on the server, the software application maybe configured to omit step 504. Storing a duplicate copy of the mediaitem on the server, in some embodiments, may be inefficient andwasteful. Thus, the software application may be configured to detectwhether a copy of the media item has already been stored on the serverbefore initiating a transfer of the media item. Thus, a duplicate copyof the media item is not transmitted to the server.

At step 506, the software application determines a set of recipientsassociated with the first channel. As shown in FIG. 4, a “My girls”channel 416 is associated with the first user associated with the firste-mail address 418 and a second user associated with the second e-mailaddress 420. At step 508, the software application notifies the server110 that each recipient included in the set of recipients is permittedto access the media item that has been dragged-and-dropped into the areaassociated with the first channel. At step 510, the software applicationcauses a notification to be sent to each recipient included in the setof recipients indicating that the recipient is permitted to access themedia item. As described, the notification may be sent by the server asan e-mail, a social network feed notification, an RSS notification, atext message, or any other technically feasible type of notification. Insome embodiments, the notification may also include a link to access oneor more media items associated with the notification.

As described in greater detail herein, embodiments of the inventionallow the sender to dynamically change the media items associated with aparticular channel and/or the recipients associated with the particularchannel.

In some embodiments, a sender may “crop” a video clip at differentplaces along the video clip and store each of the different versions asseparate media items in the same channel, or replace the original clipwith the cropped video. In yet further embodiments, a sender may give adifferent name and/or title to a media that is otherwise a copy ofanother media item and store the two media items as different mediaitems in the same channel.

In still further embodiments of the invention, a recipient of aparticular channel has no knowledge of who are the other recipients ofthe same channel. In yet further embodiments, a forum and/or messageboard and/or comments section may be provided in the softwareapplication, whereby recipients and senders can communicate personalthoughts and/or message between one another. In alternative embodiments,messages may be available to be viewed by any of the recipients and/orthe sender of a particular channel.

In still further embodiments, the software application may be configuredto allow different “skins” or formatting choices for different channels.For example, for a “Halloween” channel, the sender may choose a spookyskin with ghosts and goblins that is representative of a Halloweenscene. In still further embodiments, the sender may “tell a story” torecipients by associating a channel with a series of media items and amessage. Recipients can then view the entire “story” in some form in theviewport. In yet further embodiments, a channel may be embedded in asocial networking website so that recipients of the channel can accessthe media items included in the channel via the social networkingwebsite.

Additionally, embodiments of the invention provide an easy-to-use userinterface that dynamically updates the videos that are accessible by aparticular recipient based on the selections made by the sender. Theuser interface described in FIGS. 4 and 6, in combination with themethod 500, provides the advantage of allowing a sender to easily sharemedia items with other users, overcoming the shortcomings of prior artapproaches.

FIG. 7 is flow diagram of method steps for adding an additionalrecipient to a channel, according to one embodiment of the invention.Persons skilled in the art will understand that, even though the method700 is described in conjunction with the systems of FIGS. 1-4 and 6, anysystem configured to perform the steps of the method 700 illustrated inFIG. 7, in any order, is within the scope of the invention.

As shown, the method 700 begins at step 702, where the softwareapplication executing on the sender computing device 102 detects thatthe sender has added an additional recipient to a set of recipientsassociated with a first channel. As described in FIG. 4, recipients maybe identified by e-mail address. Accordingly, when the sender decides toadd an additional recipient to have access to the media items associatedwith a particular channel, the sender may add an e-mail addressassociated with the additional recipient to the recipient portion 414included in the media window 422 in the user interface 400.

At step 704, the software application notifies the server 110 that theadditional recipient is permitted to access each media item associatedwith the first channel. For example, if the first channel is associatedwith three media items, then the software application notifies theserver 110 that the additional recipient is permitted to access each ofthe three media items associated with the first channel. The server 110may then modify the permissions associated with the media items storedin the database 112 to allow the additional recipient to have access toeach of the media items associated with the first channel. At step 706,the software application causes a notification to be sent to theadditional recipient indicating that the additional recipient ispermitted to access each media items associated with the first channel.In one embodiment, the one or more media items associated with thechannel are not uploaded again to the server 110 when the sender adds anadditional recipient to the first channel.

In some embodiments, a sender can also remove recipients from a channel,thereby revoking access to the items associated with the channel. Infurther embodiments, senders can specify “sender permissions” that allowrecipients to view and download items shared via the channel and/orallow recipients to re-share items privately and/or publicly.

FIG. 8 is flow diagram of method steps for causing one or more channelsto be displayed to a recipient in a viewport, according to oneembodiment of the invention. Persons skilled in the art will understandthat, even though the method 800 is described in conjunction with thesystems of FIGS. 1-4 and 6, any system configured to perform the stepsof the method 800 illustrated in FIG. 8, in any order, is within thescope of the invention.

The viewport may be implemented in one or more various platformsincluding a web interface, a mobile phone application, a set-top box, aweb-enabled TV, and/or a desktop application executing on a recipientcomputing device 106, 108. In some embodiments, the viewport is embodiedby a software application executing on a recipient computing device 106,108.

As shown, the method 800 begins at step 802, where a viewportapplication determines that the user is a recipient of a first channelfrom the first sender. Referring to the example shown in FIG. 4, thefirst user (e.g., the recipient) is associated with the first e-mailaddress 418. The first sender has created a first channel (e.g., “Mygirls” channel) and has added the first user as a recipient of the firstchannel.

At step 804, the viewport application determines that the user is arecipient of a second channel from the first sender. For example, sendermay include the user as a recipient of two different channels. At step806, the viewport application determines that the user is a recipient ofa third channel from a second sender. In one embodiment, the viewportapplication may limit the channels, and/or corresponding media items,that the recipient may access via the viewport. For example, if theviewport application is activated by selecting a link included in ane-mail notification received by the recipient, then the viewportapplication may allow the recipient to access only the media itemsassociated with the notification, and deny access to other media items.The other media items may still appear in the viewport as greyed-out orstricken-through, indicating that the recipient cannot access thatcontent at the present time. In one embodiment, the other media itemsdisplayed in the viewport but not accessible by the recipient mayinclude all or some of the media items shared with the recipient via thesame e-mail address as the e-mail address at which the recipientreceived the e-mail notification. In some embodiments, if the recipientis logged-in, or subsequently logs-in, to a personal media sharingaccount, then all of the media items available to the recipient are ableto be accessed via the viewport application and no media items aredenied access. In further embodiments, the personal media sharingaccount of the recipient may be associated with multiple emailaddresses. All or a portion of the media items shared with the recipientvia one or more of the multiple email addresses may be aggregated intothe viewport application and accessible by the recipient simultaneously.

At step 808, the viewport application causes a representation of thefirst channel and a representation of the second channel to be displayedin a first portion of the viewport associated with the first sender.FIG. 9 is a screenshot of a viewport 900, according to one embodiment ofthe invention. In the embodiment shown in FIG. 9, the viewport 900 isimplemented as a web interface.

As shown, the viewport 900 includes a navigation portion 902 and a mediaportion 912. The navigation portion includes a first portion 904 and asecond portion 906. As described in step 808, a representation of thefirst channel (e.g., “Holiday” channel) and a representation of thesecond channel (e.g., “My girls” channel) are displayed in the firstportion 908. Both the first channel and the second channel are beingshared from the same sender (e.g., first sender).

Referring back now to FIG. 8, at step 810, the viewport applicationcauses a representation of the third channel to be displayed in a secondportion of the viewport associated with the second sender. As shown inFIG. 9, the “Nate's dogg” channel associated with the second sender isdisplayed in the second portion 906.

In an alternative embodiment, a representation of each channel that therecipient has created may be displayed in a third area of the viewport900. In still further embodiments, a “New items” representation may bedisplayed that, when selected by the recipient, causes a thumbnailrepresentation of each of the media items not yet viewed to be displayedin the media portion 912. In some embodiments, when a recipient views amedia item via a first viewport (e.g., a web browser), and subsequentlylaunches a second viewport via a different platform (e.g., a mobilephone application and/or web-enabled TV and/or set-top box), then themedia item viewed in the first viewport is no longer indicated as being“not viewed.” In some embodiments, “new items” are aggregated across allchannels associated with the viewport, including both local folderscontaining local media items and remote “channels.” In otherembodiments, “new items” are aggregated access a subset of the localand/or remote channels.

In still further embodiments, the viewport application may provide asearch feature where a recipient may search all or a portion of thelocal and/or remote media files using one or more search criteria.

In one embodiment, a recipient of a particular channel does not know whothe other recipients are of the channel. In an alternative embodiment,the recipient can determine who are each of or a portion of the otherrecipients of the channel.

FIG. 10 is flow diagram of method steps for removing a media item from achannel, according to one embodiment of the invention. Persons skilledin the art will understand that, even though the method 1000 isdescribed in conjunction with the systems of FIGS. 1-4, 6, and 9, anysystem configured to perform the steps of the method 1000 illustrated inFIG. 10, in any order, is within the scope of the invention.

As shown, the method 1000 begins at step 1002, where the softwareapplication determines that the sender has removed a media item from afirst channel. Various techniques may be used to remove a media itemfrom the first channel. Referring to FIG. 4, the sender may select themedia item from the media portion 422 of the user interface 400. Again,the media portion 422 displays one or more visual representations (e.g.,thumbnails) associated with one or more media files associated with theselected channel 416. In one embodiment, the sender may then choose toclick on a delete button included in the user interface (not shown) todelete the media item from the channel. In an alternative embodiment,the sender may press a delete button on a keyboard associated with thecomputer system to delete the media item from the channel. In someembodiments, a confirmation window may be displayed requesting thesender to confirm the decision to remove to the media item from thefirst channel. In some embodiments, media items shared via a channel mayexpire so that recipients can no longer access expired media items. Forexample, an icon may be displayed in the viewport indicating to arecipient whether a media item is expired or will soon expire.

Referring back now to FIG. 10, at step 1004, the software applicationnotifies the server 110 that a set of recipients associated with thefirst channel is no longer permitted to access the media item. Theserver 110 may then update the associations and/or permissionsassociated with the media item so that the recipients included in theset of recipients are no longer permitted to access the media item. Insome embodiments, the media item is not removed from the server 110since the media item may be associated with a different channel otherthan the first channel. In some embodiments, where the video is notassociated with any other channels besides the first channel, then themedia item may be removed from the server 110. Additionally, if aparticular recipient included in the set of recipients is also includedin a different set of recipients associated with a different channel inwith which the same media item is associated, then that particularrecipient is still able to access the media item via the differentchannel.

At step 1006, the software application causes the media item to be nolonger available to each recipient in the set of recipients via aviewport application associated with the recipient. As described in FIG.9, the viewport 900 includes a media portion 912 that displays athumbnail of media items included in a selected channel/folder. Once thesender has removed a media item from a particular channel (i.e., step1002) and the server is notified (i.e., step 1004), then the media itemis no longer available in the viewport 900 of the recipient.

In one embodiment, when a recipient is permitted to “access” the mediaitem via a viewport, the recipient is only permitted to play back orview the media item from the server 110 via the network 104, and is notpermitted to download the media item to the local storage associatedwith recipient computing device 106, 108. In alternative embodiments,the recipient is permitted to download the media item associated withthe channel to the recipient computing device 106, 108. In still furtherembodiments, once a media item is downloaded to the recipient computingdevice 106, 108, the recipient may then share the media item with otherrecipients via a channel created by the recipient, whereby the recipientacts a “sender.” In still further embodiments where the recipient isable to download the media item, the recipient may be prohibited fromediting the media item.

It still further embodiments, once a media item is shared with arecipient, the recipient may share the media item with other recipientswithout downloading the media item to the recipient computing device106, 108. For example, an original sender shares a first media item witha first recipient via a first channel managed by the original sender.The first recipient then shares the first media item with a secondrecipient via a second channel managed by the first recipient. The firstrecipient is, thus, acting as a “second sender.” Additionally, in someembodiments, the first recipient acting as a second sender may share themedia items included in the channel via a social networking website. Inone embodiment, if the original sender removes the first media item fromthe first channel, then the media item is also automatically removedfrom the second channel. Accordingly, the original sender may maintaincontrol of the first media item, even when shared via a “second sender.”Additionally, in some embodiments, this feature may cascade down throughnot only one second sender, but many recipients forwarding the mediaitems. For example, user A shares with user B, then user B shares withuser C, then user C shares with user D, and so forth. If user A revokesaccess to the media item, then each of users B, C, and D is deniedaccess to the media item thereafter.

The steps described in FIG. 10 apply not only to removing a media itemfrom a channel, but also to modifying a media item associated with achannel. For example, a sender may modify a first media item included afirst channel to have different characteristics, such as a differentframe rate or a different name/title. Alternatively, the sender may cropa portion from the beginning, end, and/or middle of the media item tocreate the modified media item. The modified media item is thentransferred to the server 110 and/or the media files stored on theserver 110 are updated to reflect the changes. Once the server hasreceived the modified media item, a notification may be sent to eachrecipient in the set of recipients associated with the first channel.Additionally, from the recipient's perspective, the viewport may onlyallow the recipient to access the modified media item, and may removethe original media item from the list of available media items that therecipient is permitted to access.

FIG. 11 is flow diagram of method steps for removing a recipient from achannel, according to one embodiment of the invention. Persons skilledin the art will understand that, even though the method 1100 isdescribed in conjunction with the systems of FIGS. 1-4, 6, and 9, anysystem configured to perform the steps of the method 1100 illustrated inFIG. 11, in any order, is within the scope of the invention.

As shown, the method 1100 begins at step 1102, where the softwareapplication determines that the sender has removed a first recipientassociated with a first channel. Referring back to FIG. 4, the firstrecipient, associated with the first e-mail address 418, and the secondrecipient, associated with the second e-mail address 420, are includedin the recipient portion 414 and are associated with the “My girls”channel. As an example, the sender may remove the first recipient fromthe channel by deleting the first e-mail address from the recipientlisting 414.

At step 1104, the software application notifies the server 110 that therecipient no longer has access to the media items associated with thefirst channel. Referring again to FIG. 4, the “My girls” channel 416 isassociated with three media items. When the first recipient is removedfrom the “My girls” channel 416, the first recipient would no longerhave access to the three media items included in the “My girls” channel416.

Referring again to FIG. 11, at step 1106, the software applicationcauses a representation of the first channel to no longer be displayedin a viewport associated with the first recipient. Continuing with theabove example, if the first recipient launches the viewport subsequentto the sender removing the first recipient from the recipient listingassociated with the first channel, then the first recipient would nolonger be permitted to access any of the media items associated with thefirst channel. In an alternative embodiment, the media items that therecipient is permitted to access may be updated in an already-openviewport. For example, the viewport application may be capable ofremoving a media item (or adding an additional media item) to a mediaportion of the viewport when the sender removes a media item (or adds amedia item) to the channel, all while the viewport remains open and isnot re-started. In alternative embodiments, the viewport may need to berefreshed before the updates are reflected in the viewport.

FIG. 12 is a screenshot of an e-mail notification received by arecipient, according to one embodiment of the invention. As shown, theemail notification includes a link 1202. The link 1202 is associatedwith two media items that the sender has shared with the recipient viathe “Nate's dogg” channel. In one embodiment, if the recipient clicks onthe link 1202 included in the e-mail notification, then a web browserassociated with the recipient computing device is navigated to a webpageassociated with the viewport.

FIG. 13 is a screenshot of a viewport 1300 to which the web browser ofthe recipient is navigated when the recipient clicks on the link 1302included in the e-mail notification, according to one embodiment of theinvention. As shown, the “Nate's dogg” channel 1302 is selected and therecipient is permitted to access the media items 1304, 1306. However,since the recipient has not logged-in to a personal media sharingaccount, the recipient is not able to access other channels 1308associated with the same recipient e-mail address as the e-mail addressat which the e-mail notification was received by the recipient. In oneembodiment, the other channels 1308 may appear grayed-out in or with astrike-through to indicate that the recipient is not currently permittedto access the other channels 1308. These other channels 1408 arepresently disabled and the recipient is not permitted to access themedia items associated with the other channels 1308.

Advantageously, the user does not have to create a personal account tobe able to access personalized media items shared with him/her fromanother (i.e., the media items associated with the link 1202). In sum, arecipient is able to access personalized media items without a useraccount or password, which is a unique aspect of embodiments of theinvention.

FIG. 14 is a screenshot of a viewport 1400 after the recipient haslogged-in to a media sharing account, according to one embodiment of theinvention. As shown, the other channels 1408 no longer appear asgrayed-out and/or with a strike-through. Thus, the recipient is nowpermitted to access the media items associated with these other channels1408. If the user does not have a personal account created, a link maybe provided to allow the user create a personal media sharing account.

In one embodiment, the personal media sharing account may define an“identity” of the user using multiple email addresses. As is known, manyindividuals maintain multiple email addresses for different purposes,e.g., a personal email address and a work email address. In someembodiments, an account profile associated with the personal mediasharing account may allow the user to enter multiple email address thatthe user maintains. Once an email address is verified (e.g., by sendinga verification email to the email address and requesting the user torespond), the email address is associated with an “identity” of theuser. Accordingly, whenever a sender adds any of the email addressesassociated with the user as a recipient of the channel, all of thechannels are aggregated into a single viewport that includes channelsshared to various email addresses associated with the user.Additionally, in another embodiment, where a sender has included twodifferent email addresses associated with the same identity asrecipients of the same channel, the viewport application may beconfigured to detect this occurrence and only display one copy of thechannel in the viewport of the recipient.

FIG. 15 is a screenshot of a viewport 1500 configured to display mediaitems associated with a channel created by the recipient, according toone embodiment of the invention. As shown, the viewport includes a mediaportion 1502 and a navigation portion 1504. In the navigation portion1504, a “Cindy” channel 1506 is selected by the recipient. The “Cindy”channel 1506 is included in a “My channels” portion of the navigationportion. Channels included in the “My channels” portion include thosechannels created by the recipient (i.e., recipient acts as a “sender”)and also includes the “My Channel” channel to which the recipient is theonly “recipient.”

FIG. 16 is a screenshot of a viewport 1600 configured to allow arecipient to configure the settings of the viewport 1600, according toone embodiment of the invention. As shown, the recipient may changevarious settings and preferences, including how often to receive anotification alerting the recipient about additional media items. Forexample, the recipient may set a notification preference to receivenotifications immediately, once a day, once a week, never, or at anyother interval. Additionally, the recipient may select the medium bywhich the notification is to be received. For example, the recipient maychoose to receive e-mail notifications, text message notification, ornotifications via any other mode of communication. Other settings andpreferences are also within the scope of embodiments of the invention.Additionally, in some embodiments, a recipient is able to “block” asender so as to not receive any media items that the sender adds to achannel that the sender shares with the recipient.

Advantageously, embodiments of the invention provide more efficient andintuitive systems and methods for sharing media items with one or morepersons. From the sender's perspective, embodiments of the inventionallow for an easy-to-use drag-and-drop technique, which is moreuser-friendly than conventional techniques. Additionally, the sender caneasily modify the listing of recipients associated with a channel todeny the removed recipients any further access to the media itemsassociated with the channel. This feature is a departure fromconventional techniques, such as e-mailing a media item to a recipient,since using the conventional email technique, once the recipientreceives the media item, the sender has no control over what therecipient can do with the media item. Furthermore, embodiments of theinvention provide a much easier method for sharing content, whencompared to prior art techniques. In particular, frequent sharing ofcontent with a recipient is made easy. Once a channel is established,media items can be added and/or removed from being shared with one ormore recipients via simple dragging-and-dropping. This technique foradding/removing media items from being shared involves fewer steps thanconventional sharing methods and is implemented in a way that would bevery familiar and/or intuitive to average computer users.

From the recipient's perspective, embodiments of the invention allowmedia items from multiple sources to be aggregated into a singleviewport, providing a cohesive and unified approach to media itemsreceived from others. Additionally, since the media items are storedremotely on a server, the recipients are able to access the media itemson-the-go, providing for additional portability of the media itemsshared with the recipient. Further, since the viewport may beimplemented using various platforms (e.g., desktop application, webinterface, mobile device application, set-top box, web-enabled TV,etc.), the recipient can access the media items via whatever platform isthe most well-suited for the recipient's specific purpose. Accordingly,embodiments of the invention facilitate accessibility to the media itemsby the recipient, overcoming one or more of the problems associated withconventional techniques.

While the forgoing is directed to embodiments of the present invention,other and further embodiments of the invention may be devised withoutdeparting from the basic scope thereof. For example, aspects of thepresent invention may be implemented in hardware or software or in acombination of hardware and software. In addition, one embodiment of theinvention may be implemented as a program product for use with acomputer system. The program(s) of the program product define functionsof the embodiments (including the methods described herein) and can becontained on a variety of computer-readable storage media. Illustrativecomputer-readable storage media include, but are not limited to: (i)non-writable storage media (e.g., read-only memory devices within acomputer such as CD-ROM disks readable by a CD-ROM drive, flash memory,ROM chips or any type of solid-state non-volatile semiconductor memory)on which information is permanently stored; and (ii) writable storagemedia (e.g., floppy disks within a diskette drive or hard-disk drive orany type of solid-state random-access semiconductor memory) on whichalterable information is stored. Such computer-readable storage media,when carrying computer-readable instructions that direct the functionsof the present invention, are embodiments of the present invention.Therefore, the scope of the present invention is determined by theclaims that follow.

What is claimed is:
 1. A method for enabling media items to be sharedbetween two or more persons, the method comprising: receiving a mediaitem from a first computing device; storing the media item in a storagememory; associating the media item with at least a first channel of aplurality of channels, wherein each channel is defined by a first set ofmedia items and a first set of recipients and wherein each channel hasan associated set of permissions for granting the recipients access tothe first media items; inheriting, by the media item, the first channelpermissions to view, download or share the media item; and allowing eachof the recipients in the first set of recipients to access each of themedia items included in the first set of media items from one or moreother computing devices; allowing the recipients to block media contentand notifications from a sender; upon receiving an indication from thefirst computing device to disassociate the first media item from thefirst channel, removing the first item from the first set of media itemsso that the recipients included in the first set of recipients are nolonger permitted to access the media; and upon receiving an indicationfrom the first computing device to disassociate a first recipient fromthe first channel, removing a first recipient from the first set ofrecipients so that the first recipient is no longer permitted to accessthe media item and notifying the first recipient of changes to thepermissions associated with the media item.
 2. The method of claim 1,wherein the storage memory comprises a database coupled to the computersystem.
 3. The method of claim 1, further comprising generating anotification indicating that each recipient included in the first set ofrecipients has permission to access each of the media items included inthe first set of media items.
 4. The method of claim 3, furthercomprising transmitting the notification to each recipient included inthe first set of recipients.
 5. The method of claim 4, wherein thenotification comprises an electronic mail notification.
 6. The method ofclaim 5, wherein the electronic mail notification includes a link that,when selected by a recipient included in the first set of recipientsfrom a second computing device, causes a viewport application to beexecuted on the second computing device.
 7. The method of claim 3,wherein the notification comprises a social network feed, a ReallySimple Syndication (RSS) feed, or a text message.
 8. A non-transitorycomputer-readable storage medium storing instructions that, whenexecuted by a processor, cause a computer system to share media itemswith one or more persons, by performing the steps of: receiving a mediaitem from a first computing device; storing the media item in a storagememory; associating the media item with at least a first channel of aplurality of channels, wherein each channel is defined by a first set ofmedia items and a first set of recipients and wherein each channel hasan associated set of permissions for granting the recipients access tothe first media items; inheriting, by the media item, the first channelpermissions to view, download or share the media item; and allowing eachof the recipients included in the first set of recipients to access eachof the media items included in the first set of media items from one ormore other computing devices; allowing the recipients to block mediacontent and notifications from a sender; upon receiving an indicationfrom the first computing device to disassociate the first media itemfrom the first channel, removing the first item from the first set ofmedia items so that the recipients included in the first set ofrecipients are no longer permitted to access the media; and uponreceiving an indication from the first computing device to disassociatea first recipient from the first channel, removing a first recipientfrom the first set of recipients so that the first recipient is nolonger permitted to access the media item and notifying the firstrecipient of changes to the permissions associated with the media item.9. The non-transitory computer-readable storage medium of claim 8,further comprising the step of generating a notification indicating thateach recipient included in the first set of recipients has permission toaccess the media items included in the first set of media items.
 10. Thenon-transitory computer-readable storage medium of claim 9, furthercomprising the step of transmitting the notification to each recipientincluded in the first set of recipients.
 11. The non-transitorycomputer-readable storage medium of claim 10, wherein the notificationcomprises an electronic mail notification.
 12. The non-transitorycomputer-readable storage medium of claim 11, wherein the electronicmail notification includes a link that, when selected by a recipientincluded in the first set of recipients from a second computing device,causes a viewport application to be executed on the second computingdevice.
 13. The non-transitory computer-readable storage medium of claim8, wherein the first media item is a video file.
 14. The method of claim1, wherein the media item is included in the channel based on a visualrepresentation associated with the media item being dragged and droppedover an area of a user interface of the first computing device thatcorresponds to the channel.